home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1996 / MacHack 1996.toast / Presentations / Presentations ’88 / Feldt Advanced Mac Programming / Serial Port / portinitdemo.c next >
C/C++ Source or Header  |  1987-10-26  |  2KB  |  38 lines

  1. /*                       ssg Commlib - PortInitDemo                            */
  2. /*                          Aztec C compiler 1.06i                            */
  3. /*                        Lightspeed C compiler 2.01                        */
  4. /*                            copyright 1987 by ssg                            */
  5.  
  6. #include  <extender.h>
  7.  
  8. EventRecord          Event;                          /* event record structure instance    */
  9. EventStuff           whatHappened;     /* event detail structure instance    */
  10. MenuHandle          appleMenu,fileMenu,editMenu; /* handles for std menus    */
  11. SerialPort         PortA;            /* serial port data structure instance    */
  12.  
  13. main()
  14. {
  15.     XTCommInit();                    /* init Toolbox managers, Commlib    */
  16.     InitSPort(&PortA,'A');                /* set modem port (A) to defaults    */
  17.  
  18.     PortA.baud = baud9600;            /* 9600 baud transmission rate    */
  19.     PortA.parity = evenparity;            /* set character parity to even    */
  20.     PortA.stopbits = stop15;            /* set to 1.5 stopbits per character    */
  21.     PortA.databits = data7;            /* set to 7 databits per character    */
  22.     SetSPort(&PortA);                /* set modem port to above values    */
  23.  
  24.     PortA.inbufsize = 1024;            /* set input buffer to 1024 bytes (1K)    */
  25.     PortA.in = NewPointer((long)1024);    /* set address of input buffer    */
  26.     PortA.outbufsize = 0;                /* leave output buffer untouched    */
  27.     SetBufSPort(&PortA);                /* set modem port to above values    */
  28.  
  29.     do {        
  30.         do {
  31.             SystemTask();            /* slice of cpu time for DAs    */          } while (!GetNextEvent(everyEvent,&Event));     /* until event occurs     */
  32.  
  33.         HandleEvent(&Event,&whatHappened);
  34.  
  35.     } while (ExitRequest(&whatHappened) == FALSE);
  36.     ResetSPort(&PortA);                /* release serial port driver, memory    */
  37. }
  38.